使用Rust在IC上构建:释放世界计算机的力量
文章来自于/DFINITY Medium
投稿、转载请联系/D Plus小助手
Rust开发者在互联网计算机(简称IC)区块链上构建具有许多优势。
01
拥抱Rust开发者
7年前的今年,Rust编程语言核心团队正式宣发发布Rust 1.01版本,7年来,它优雅的解决高并发和高安全性系统问题的能力,受到了越来越多开发者的喜爱。
在近几年来,Rust也因其在区块链领域的开发特性,得到了许多著名区块链的青睐,越来越多的区块链正在使用Rust作为其开发语言。
而WebAssembly技术飞速发展带来的成果也及时地应用到了区块链中。Rust 对 WebAssembly提供的一等支持,也使Rust语言得到了相应的间接赋能。
作为主打开发者友好型和去中心化全栈路线的IC来说,除了在系统层上提供了强大的开发技术栈外,在基础设施层和开发工具上也为开发者提供了诸多强大、高效的开发资源。
在IC的设计中,Canister式智能合约的可执行文件采用WebAssembly(WASM)格式,所有可以被编译为WASM格式的编程语言都可以用于在IC上编写Dapp,包括Rust和由DFINITY基金会推出的新兴编程语言Motoko等。
Rust目前也作为IC上主流的开发语言之一,其除了拥有成熟的生态外,还更契合底层开发,IC生态正在拥抱更多Rust开发者加入,构建DeFi、NFT、Game、Social和其它领域去中心化Dapp。
02
基于IC构建的优势
完全上链的Dapp:普遍情况下,一个Dapp的组成基本是割裂的,即为应用主体或前端基本是部署在中心化云服务上,仅有处理链上数据的智能合约部署在区块链上。而IC打破了这种固有魔咒-IC提供全栈式托管服务,提供前后端上链的能力。这不仅消除了Dapp对云服务的依赖,也同时为开发者们带来了无中间件的范式开发体验。
低准入门槛:与其它区块链不同的是,IC使用“反向Gas模型”作为网络Gas模型,在该模型下,用户与IC网络交互时不需要拥有支付任何Gas费用。基本上,大部分的IC用户都拥有一个Internet Identity/简称ii(IC上的身份验证框架,更类似于一个DID身份管理器)身份,通过ii,任何用户都能通过设备的生物识别技术(指纹识别、面容识别)或HSM硬件模块(Yubikey、Ledger)进入IC的Web3世界。
高性价比:IC使Dapp在链上完全托管成为可能,在托管性价比方面也拥有绝对的优势。目前IC的单个Canister智能合约可以拥有超过30GB的存储空间,并且可以处理跨多个区块的复杂计算。IC存储1GB每年的费用仅需5美元。
原生预言机:目前大部分L1区块链与Web2价值数据交互的方式是通过引入一个被成为“预言机”的第三方组件。虽然预言机起到了使链上与链下数据的交互关键作用,但也拥有一些痛点,增加了信任风险、开发成本和复杂性。在近期DFINITY实现的HTTPs Outcalls功能中允许IC的智能合约直接调用Web2的API与Web2应用或数据进行交互,而无需任何中间件。
可扩展的异步计算环境:IC上的每一个Canister智能合约都有一个执行更新线程,但IC可以并行的执行大量Canister线程来实现水平扩展性能。此外IC的Canister间调用的异步性质可以很好的映射Rust中的async/await语法。
限于文章篇幅,想要了解更多关于IC功能特性的小伙伴们可以通过下方链接查阅:
https://internetcomputer.org/features
03
繁荣的生态系统
IC使用Rust、Motoko、TypeScript等编程语言来构建一个充满活力和想象力的dapp生态系统。
异步DeFi:在强一致性上,因异步模型,IC没有像ETH等区块链的优势,但也可以通过补偿机制或技术手段来解决一致性问题。目前建立IC上主要的DeFi项目有⬇️
ICLighthouse:
https://avjzx-pyaaa-aaaaj-aadmq-cai.raw.ic0.app/
ICPSwap:
https://3pbcj-viaaa-aaaah-qaajq-cai.raw.ic0.app/
Infinity Swap:
https://app.infinityswap.one/pools
Sonic:
https://sonic.ooo/
Spinner.Cash:
https://spnr.app/
PS:在体验这些项前,建议小伙伴们可以点击本段文字阅读我们的解读文章(包括上方所有IC DeFi项目在内的体验文章)
社交:IC设计初衷之一是隐私化的应用场景,结合反向Gas模型,这为社交属性的Dapp打造了天然的应用场景。目前建立在IC上的主要Social项目有⬇️
DSCVR(论坛类社交):
https://dscvr.one/
Distrikt(去中心化推特):
https://az5sd-cqaaa-aaaae-aaarq-cai.ic0.app/
OpenChat(即时类社交应用,功能类似WhatsApp):
https://oc.app/
此外,另外一个将Web3社交特性活灵活现的一个社交协议是由Dstar在IC上构建的Mora,其通过IC底层特性来实现隐私化、数据主权化和具有强大互通性的底层社交协议,使每一个人、每一个团队、每一个组织、每一个社区都能基于不同的思想构建多元化的社交内容Canister。
关于更多Mora的详情:
https://twitter.com/Mora_App
NFT:IC的超强可编程性和完全上链特性也为NFT应用带来了天然的河床,目前建立在IC上的主要NFT应用包括⬇️
Entrepot(目前IC上交易量最高的NFT交易市场):
https://entrepot.app/
Yumi(具有元宇宙属性的NFT交易市场):
https://tppkg-ziaaa-aaaal-qatrq-cai.raw.ic0.app/
NFT Anvil(提供模块化的NFT协议):
https://nftanvil.com/
Memecake(多链NFT交易市场)
https://memecake.io/
04
Rust开发资源
开始你的IC Rust开发之旅吧!
IC Rust开发入门指南:
https://internetcomputer.org/docs/current/developer-docs/build/cdks/cdk-rs-dfinity/rust-quickstart
Rust 代码示例参考:
https://internetcomputer.org/samples/?selectedLanguages=rust
DFINITY开发者Discord和开发者论坛:
https://discord.com/invite/VUpRrx2W
https://forum.dfinity.org/
IC Rust的开发最佳实践
https://www.youtube.com/watch?v=36L33S_DYHY&ab_channel=DFINITY)
05
立即启动
IC社区欢迎和拥抱任何开发者在IC生态版图上构建属于您的一块内容,并提供相应的帮助和支持:
1、目前任何开发者都可以加入IC的Discord开发者社区领取20T 免费的Cycle(相当于IC上的Gas)来启动您在IC上的第一次开发之旅。
Cycle水龙头链接:
https://anv4y-qiaaa-aaaal-qaqxq-cai.ic0.app/
2、DFINITY Grant计划皆在为任何在IC上Build项目的开发者和团队提供早期资金支持与帮助,从而促进IC生态系统的发展,并使更多开发者和用户访问和使用IC。
目前Grant计划分为3个级别,分别为$5000、$25000和$100000;Grant计划的重点涵盖领域分为:开发者工具、基础设施、APIs、Dapps和开放的互联网服务、CDK和Agents。
Grant申请入口:
https://dfinity.org/grants
每周必看
AMA预告
联系我们
t.me/DFINITY_ZH
twitter.com/D_PlusCommunity
twitter.com/D_PlusCN